/**
 * 订单信息dao层接口
 */
package com.bys.ots.dao;

import java.util.List;

import com.bys.ots.model.VSoInfo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import com.bys.ots.model.SoInfo;

/**
 * @author bairuihua
 * 2019/11/25
 */

@Mapper
public interface SoInfoMapper {

    List<VSoInfo> selectBySoAndEmail(@Param("so") String so,@Param("email") String email);
    List<SoInfo> selectByEmailAndStatus(@Param("userId") String userId,
                                        @Param("deliveryStatus") String deliveryStatus,
                                        @Param("so") List so,
                                    @Param("shipToCode")  String shipToCode,
                                    @Param("shipToName")  String shipToName,
                                    @Param("billToCode")  String billToCode,
                                    @Param("billToName")  String billToName,
                                    @Param("saleEmail")  String saleEmail ,
                                    @Param("csrEmail")  String csrEmail ,
                                    @Param("skuNumber")  String skuNumber ,
                                    @Param("skuName")  String skuName  ,
                                        @Param("choice") String choice,
                                        @Param("poNumber") String poNumber,
                                        @Param("startDate") String startDate, @Param("endDate") String endDate, @Param("startOff") int startOff,
                                        @Param("pageSize") int pageSize);

    List<SoInfo> selectByStatus(@Param("deliveryStatus") String deliveryStatus,
                                @Param("so") List so,
                                @Param("shipToCode")  String shipToCode,
                                @Param("shipToName")  String shipToName,
                                @Param("billToCode")  String billToCode,
                                @Param("billToName")  String billToName,
                                @Param("saleEmail")  String saleEmail ,
                                @Param("csrEmail")  String csrEmail ,
                                @Param("skuNumber")  String skuNumber ,
                                @Param("skuName")  String skuName  ,
                                @Param("choice") String choice,
                                @Param("poNumber") String poNumber,
                                @Param("startDate") String startDate, @Param("endDate") String endDate, @Param("startOff") int startOff,
                                @Param("pageSize") int pageSize);

    List<SoInfo> selectSapByEmailAndStatus(@Param("emailList") List<String> emailList,
                                           @Param("deliveryStatus") String deliveryStatus,
                                           @Param("so") String so);

    List<SoInfo> selectE1ByEmailAndStatus(@Param("emailList") List<String> emailList,
                                          @Param("so") String so);

    SoInfo selectBySOAndItem(@Param("so") String so, @Param("soItem") String soItem);

    List<SoInfo> selectBySO(@Param("so") String so, @Param("type") Integer type);

    SoInfo selectItemsBySO(@Param("so") String so);
}
